package com.yonyou.cyxdms.sysAuth.service.dto;

import com.yonyou.cyx.function.utils.bean.BeanMapperUtil;
import com.yonyou.cyxdms.framework.bean.dto.base.DMSBaseDTO;
import com.yonyou.cyx.framework.bean.entity.base.BasePO;
import java.io.Serializable;


/**
 * <p>
 * 页面字段权限配置
 * </p>
 *
 * @author quankk
 * @since 2019-07-05
 */

public class PageFieldDTO extends DMSBaseDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 字段ID
     */
        private Integer fieldId;
        /**
     * 经销商代码
     */
        private String dealerCode;
        /**
     * 页面ID
     */
        private Integer pageId;
        /**
     * 字段唯一标识（用户页面验证）
     */
        private String fieldKey;
        /**
     * 字段名称
     */
        private String fieldName;
        /**
     * 字段描述
     */
        private String fieldDesc;
        /**
     * 字段类型：如字段是否必选，字段是否显示
     */
        private Integer fieldType;
        /**
     * 是，否启用权限控制
     */
        private Integer permissionCtl;
        /**
     * 是否启用
     */
        private Integer isEnable;
        /**
     * 开发人员
     */
        private String owner;
            private Boolean isDeleted;
    
    public PageFieldDTO() {
        super();
    }




    public Integer getFieldId() {
        return fieldId;
    }


    public void setFieldId(Integer fieldId) {
        this.fieldId = fieldId;
    }



    public String getDealerCode() {
        return dealerCode;
    }


    public void setDealerCode(String dealerCode) {
        this.dealerCode = dealerCode;
    }



    public Integer getPageId() {
        return pageId;
    }


    public void setPageId(Integer pageId) {
        this.pageId = pageId;
    }



    public String getFieldKey() {
        return fieldKey;
    }


    public void setFieldKey(String fieldKey) {
        this.fieldKey = fieldKey;
    }



    public String getFieldName() {
        return fieldName;
    }


    public void setFieldName(String fieldName) {
        this.fieldName = fieldName;
    }



    public String getFieldDesc() {
        return fieldDesc;
    }


    public void setFieldDesc(String fieldDesc) {
        this.fieldDesc = fieldDesc;
    }



    public Integer getFieldType() {
        return fieldType;
    }


    public void setFieldType(Integer fieldType) {
        this.fieldType = fieldType;
    }



    public Integer getPermissionCtl() {
        return permissionCtl;
    }


    public void setPermissionCtl(Integer permissionCtl) {
        this.permissionCtl = permissionCtl;
    }



    public Integer getIsEnable() {
        return isEnable;
    }


    public void setIsEnable(Integer isEnable) {
        this.isEnable = isEnable;
    }



    public String getOwner() {
        return owner;
    }


    public void setOwner(String owner) {
        this.owner = owner;
    }



    public Boolean getDeleted() {
        return isDeleted;
    }


    public void setDeleted(Boolean isDeleted) {
        this.isDeleted = isDeleted;
    }



    @Override
    public String toString() {
        return "PageFieldDTO{" +
        "fieldId=" + fieldId +
        ", dealerCode=" + dealerCode +
        ", pageId=" + pageId +
        ", fieldKey=" + fieldKey +
        ", fieldName=" + fieldName +
        ", fieldDesc=" + fieldDesc +
        ", fieldType=" + fieldType +
        ", permissionCtl=" + permissionCtl +
        ", isEnable=" + isEnable +
        ", owner=" + owner +
        ", isDeleted=" + isDeleted +
        "}";
    }
    /**
     * 将DTO 转换为PO
     * //对某个对象属性进行赋值
     * //BeanMapperUtil.populateValueByMethod(transPO,"setXxx",this.getXxx);
     * @param poClass dto 需要转换的dto
     * @author quankk
     * @since 2018/7/22 0022
     */
    @Override
    public <T extends BasePO> T transDtoToPo(Class<T> poClass) {
        return super.transDtoToPo(poClass);
    }

    /**
     * 将DTO 转换为PO
     * BeanMapperUtil.populateValueByMethod(transPO,"setXxx",this.getXxx);
     * @param po 需要转换的对象
     * @author quankk
     * @since 2018/7/22 0022
     */
    public <T extends BasePO> void transDtoToPo(T po) {
        BeanMapperUtil.copyProperties(this, po, "fieldId");
    }

}
